package com.ruoyi.outcome.service.impl;

import java.util.Collections;
import java.util.List;

import com.ruoyi.outcome.domain.vo.ResearchPatentTrack;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.outcome.mapper.ResearchPatentMapper;
import com.ruoyi.outcome.domain.ResearchPatent;
import com.ruoyi.outcome.service.IResearchPatentService;

/**
 * 专利管理Service业务层处理
 * 
 * @author zxh
 * @date 2025-01-06
 */
@Service
public class ResearchPatentServiceImpl implements IResearchPatentService 
{
    @Autowired
    private ResearchPatentMapper researchPatentMapper;

    /**
     * 查询专利管理
     * 
     * @param patentId 专利管理主键
     * @return 专利管理
     */
    @Override
    public ResearchPatent selectResearchPatentByPatentId(Long patentId)
    {
        return researchPatentMapper.selectResearchPatentByPatentId(patentId);
    }

    /**
     * 查询专利管理列表
     * 
     * @param researchPatent 专利管理
     * @return 专利管理
     */
    @Override
    public List<ResearchPatent> selectResearchPatentList(ResearchPatent researchPatent)
    {
        return researchPatentMapper.selectResearchPatentList(researchPatent);
    }

    /**
     * 新增专利管理
     * 
     * @param researchPatent 专利管理
     * @return 结果
     */
    @Override
    public int insertResearchPatent(ResearchPatent researchPatent)
    {
        return researchPatentMapper.insertResearchPatent(researchPatent);
    }

    /**
     * 修改专利管理
     * 
     * @param researchPatent 专利管理
     * @return 结果
     */
    @Override
    public int updateResearchPatent(ResearchPatent researchPatent)
    {
        return researchPatentMapper.updateResearchPatent(researchPatent);
    }

    /**
     * 批量删除专利管理
     * 
     * @param patentIds 需要删除的专利管理主键
     * @return 结果
     */
    @Override
    public int deleteResearchPatentByPatentIds(Long[] patentIds)
    {
        return researchPatentMapper.deleteResearchPatentByPatentIds(patentIds);
    }

    /**
     * 删除专利管理信息
     * 
     * @param patentId 专利管理主键
     * @return 结果
     */
    @Override
    public int deleteResearchPatentByPatentId(Long patentId)
    {
        return researchPatentMapper.deleteResearchPatentByPatentId(patentId);
    }

    @Override
    public int insertResearchPatentAudit(ResearchPatentTrack researchPatentTrack) {
        return  researchPatentMapper.insertResearchPatentAudit(researchPatentTrack);
    }

    @Override
    public List<ResearchPatentTrack> selectResearchPatentAuditList(Long patentId) {
        return researchPatentMapper.selectResearchPatentAuditList(patentId);
    }
}
